package utils;

import org.aspectj.lang.ProceedingJoinPoint;

//切面类方法
public class MyAspect {
    public void method1(){
        System.out.println("--method1");
    }

    public void method2(){
        System.out.println("--method2");
    }

    public void method3(){
        System.out.println("--method3");
    }

    public void method4(){
        System.out.println("--method4");
    }

    //环绕通知的切点方法，必须遵循如下规则：
    //1、必须带有一个ProceedingJoinPoint类型的参数；
    //2、必须有Object类型的返回值；
    //3、在前后增强的逻辑业务之间执行Object object = proceedingJoinPoint.proceed();
    //4、返回Object。
    public Object method5(ProceedingJoinPoint proceedingJoinPoint) throws Throwable {
        System.out.println("--method5--before");
        //3、此代码的执行表示切入点方法的执行；
        Object object = proceedingJoinPoint.proceed();
        System.out.println("--method5--after");
        return object;
    }

}
